home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 1 Issue 2 / PDCD-1 - Issue 02.iso / _utilities / utilities / 003 / _filer / !Filer- / !Help next >
Text File  |  1994-09-08  |  16KB  |  433 lines

  1.  
  2. !Filer- version 2.0
  3. ___________________
  4.  
  5.  
  6. 1.1 -> 2.0 changes
  7. ==================
  8.  
  9. pinboard menu items changed from text to 'pointer sensitive' sprites.
  10. looks nicer, but the sprites must go into the Wimp sprite pool and
  11. if you add new devices to the pinboard menu you'll have to find
  12. appropriate sprites for them
  13.  
  14. the pinboard menu configuration stuff has been moved out of !RunImage.
  15. a dedicated program is used to create needed data from a list of
  16. device/sprite pairs. see !Filer-.PinBrdMenu.!Help
  17.  
  18. if a 'normal' menu item is a directory, the icon won't invert when
  19. the pointer's over it, but RiscPC's small_diro (o=open) sprite will
  20. be displayed instead. (low res small_diro is 'used'. if you mostly work
  21. in a high resolution mode, replace !Filer-.PinBrdMenu.Sprites.small_diro
  22. with Stuff.small_diro.higháres (don't forget to rename it). Still better
  23. put both into ResoIcons/IconSwitch, whatever your low/high res icon
  24. switcher's name is. if you are a RiscPC, you can do even better: delete
  25. small_diro from !Filer-.PinBrdMenu.Sprites)
  26.  
  27. the 'missing hand' feature (see below) has been added
  28. (it's about opening directories, something a filer does ?)
  29.  
  30. --
  31.  
  32. 2.0 !RunImage is 14071-13420 bytes longer than 1.1 and it adds 3640 bytes to
  33. your Wimp sprite pool. so, it comes with the 1.1 !RunImage in Stuff.Greyish
  34.  
  35.  
  36. bug fixes
  37. =========
  38.  
  39. when you got the 'Too menu menus' error (RISC OS' 8 menus limit) and
  40. clicked on 'OK' in the error box, Filer- fell into the infinite
  41. 'Not a heap block' error loop, which you could leave only by quitting
  42. Filer- (clicking 'Cancel'). this has been corrected in both 1.1 and 2.0 .
  43. you still get the error box, but can safely click upon 'OK' to ignore
  44. the error.
  45.  
  46.  
  47. the modified 1.1 !Help follows
  48. { stuff in {} brackets applies to 2.0 only }
  49.  
  50. --
  51.  
  52. Who's that girl ?
  53. =================
  54.  
  55. 'Filer' in its name tells us that it's a kind of a filer
  56. '-'     in its name tells us that it's less than a filer
  57.  
  58. Like the Filer it allows you to 'walk' through the directory tree
  59. of a filing system and manipulate objects.
  60.  
  61. Unlike the Filer it does the first very quickly because it's 'menu driven',
  62. but is not very good at the latter - it only Filer_Run's objects which means
  63. that files can be run and loaded and directories opened; you still need the
  64. 'right' Filer to change file types, stamp files etc.
  65.  
  66.  
  67. How to use it...
  68. ================
  69.  
  70. There are three ways of getting a Filer- menu.
  71.  
  72. 1) If there's an opened directory viewer on your desktop,
  73.    position the pointer over it and click MENU while holding down
  74.    the Alt key (either the left or the right one). The menu that
  75.    appears shows the contents of the directory (the viewer is already
  76.    displaying...) and looks like
  77.  
  78.    +------------+
  79.    |  dir name  |  the title holds the name of the directory
  80.    +------------+
  81.    |    Up    ë |  leads to the parent dir
  82.    | some dir ë |  go right to get further down the tree or click to open
  83.    | some file  |  click to run/load somewhere
  84.    |   etc...   |
  85.  
  86.    If you're in the root directory ('dir name' = $ ), there's no parent and
  87.    so 'Up' leads to a 1-item submenu named 'FS::Disc' holding the name
  88.    of the Filing System and the name/number of the Disc the dir is 'on'.
  89.  
  90.    To get into an application directory, click SELECT/ADJUST over its menu
  91.    entry while holding down Shift. Clicks with ADJUST keep the menu alive
  92.    (of course)
  93.  
  94.    { in 2.0, you can use a 'long SELECT click': click on an 'application
  95.      item' with SELECT and hold the button down for a while. you MUST NOT
  96.      'long ADJUST click' upon a Filer- menu item; see 'Problems' below }
  97.  
  98. 2) Click ADJUST over any of the FS Filers (eg ADFS floppy, RAMFS).
  99.    You get a menu similar to the above for the root directory of the device.
  100.    The ResourceFS is an exception: here you get the $.Apps menu, just like
  101.    when you click SELECT over the Apps icon.
  102.  
  103. 3) To get the 3rd method to work 100% you most probably will need to do
  104.    some reconfiguration, as !Filer- as you've got it is configured to
  105.    run on my machine which is very likely to be different to yours.
  106.    Some things will work though so let's try it...
  107.  
  108.    Click MENU over the Pinboard. You'll get:
  109.  
  110.    +----------+
  111.    |  Filer-  |  menu title
  112.    +----------+
  113.    | Floppy ë |  leads to ADFS::0.$
  114.    | HDrive ë |           IDEFS::4.$
  115.    | RAM    ë |           RAM:$
  116.    | ROM    ë |           ResourceFS:$
  117.    | Memfis ë |           MemFS:$
  118.    +----------+
  119.  
  120.    { in 2.0, you have sprites instead of text. the sprites are in Sprites
  121.      in the directory !Filer-.PinBrdMenu . see !Help in the same place }
  122.  
  123.    Now you see why it could fail to work properly on your system.
  124.  
  125.    If you haven't got a filing system from the above list and follow
  126.    the ë in 'its' menu entry, the 'Filing system not present' error
  127.    will be generated which Filer- will trap and open a submenu with
  128.    a greyed out 'Not present' entry.
  129.  
  130.    This is curable by
  131.  
  132. Customising the pinboard menu
  133. =============================
  134.  
  135. !Filer- comes with 2 variants of the same module: Alt_No and Alt_Yes
  136. (in the !Filer-.PinBrdMenu directory. the module is titled
  137.  FiPiFi: FIler PInboard FIlter)
  138.  
  139. If Alt_No is being used you get Filer-'s 'pinboard (alias desktop) menu'
  140. when you click MENU over the Pinboard window.
  141.  
  142. If Alt_Yes is being used you get the menu when you click MENU over the
  143. Pinboard window AND are holding down the Alt key (either left or right).
  144.  
  145. You tell Filer- which one to use in !Filer-.!Run (see there, it's easy...)
  146.  
  147. To adapt the pinboard menu to your system involves hacking the source code
  148. a bit, but because of various important reasons i've already forgotten i
  149. decided to do it this way...
  150.  
  151. { no hacking needed in 2.0, read !Filer-.PinBrdMenu.!Help }
  152.  
  153. --
  154.  
  155. (1.1 only, but read it anyway)
  156.  
  157. The menu layout and the physical devices associated with the menu
  158. items are specified in two ╣ DATA lines at the start of !Filer-.!RunImage:
  159.  
  160. DATA pmi 1, pmi 2, ... , pmi N,
  161. DATA dev 1, dev 2, ... , dev N,
  162.  
  163. Remember that spaces BEFORE a , are prepended to a DATA string but spaces
  164. BEHIND a , are not : reading 'DATA a , b' yeilds the strings "a " and "b".
  165. This is important when specifying device names.
  166.  
  167. Both lists (must) end in the invisible (of course) empty string
  168. If you don't like invisible things put a "" after the final ,
  169.  
  170. Å a pinboard menu item (1st DATA line) can be any string you like, except:
  171.   - it must not contain the full stop (.) character
  172.   - only the first 12 characters are 'significant'
  173.     ('' for it's a stupid word; but not all ''-words are)
  174.  
  175. Å a device specification (2nd DATA line) is of the form
  176.  
  177.                 FilingSystemName:[:DriveNumber] or
  178.                 FilingSystemName:[:DriveName]
  179.  
  180.   (stuff in square brackets [] is optional)
  181.  
  182.   These are prepended to the $.etc part of an object's path name and
  183.   thus must follow the given format
  184.  
  185. Note: the code that builds the pinboard menu assumes it has at least one
  186. item in it. To get the exotic '< 1 item' case do not doubleclick over the
  187. !Filer- icon when you see it in a directory viewer window
  188.  
  189.  
  190. Examples
  191. --------
  192.  
  193. 1) You have one ADFS floppy (yeah) and one IDE hard drive called IDEDisc4
  194.    So you say:
  195.  
  196.    DATA Advanced FS, I Do Easy,
  197.    DATA ADFS:,       IDEFS::IDEDisc4,
  198.  
  199.    On a(n) (Alt)MENU Filer- pops up:
  200.  
  201.    +---------------+
  202.    |    Filer-     |
  203.    +---------------+  when you go right and click over, for instance
  204.    | Advanced FS ë |  $.dir.file -> (a)
  205.    | I Do Easy   ë |  $.dir      -> (b)
  206.    | ...         ë |
  207.  
  208.    then Filer_Run ADFS:$.dir.file       (a)
  209.                   IDEFS::IDEDisc4.$.dir (b)
  210.  
  211.    will be executed.
  212.  
  213.    In (a), the filer looks for the object on the *Configure'd ADFS drive,
  214.    which is drive 0 on a 1 FD machine (at least on mine)
  215.  
  216.    Now imagine this scenario:
  217.    - you get a job (hey! congrats!)
  218.    - you add the second floppy to your system
  219.    - you *Configure drive 1
  220.    - but you still want: Advanced FS = ADFS::0
  221.  
  222.    See it? You must change ADFS: into ADFS::0 .
  223.    So, why not do it right right from the start? Specifying the drive number
  224.    (name when applicable) makes the existing menu 'constant' and any changes
  225.    are due to new items only - just add a new menu entry for drive 1:
  226.  
  227.    DATA old stuff, Rockefeller, old stuff,
  228.    DATA old stuff,     ADFS::1, old stuff,
  229.  
  230.  
  231. 2) You have 2 ADFS floppies and one ADFS hard drive called Drive4
  232.    So you say:
  233.  
  234.    DATA Floppy 1, Floppy 2, Hard Chair,
  235.    DATA ADFS::0,  ADFS::1,  ADFS::4,
  236.                             ^^^^^^^
  237.                   could say ADFS::Drive4 of course
  238.  
  239.    On a(n) (Alt)MENU Filer- pops up:
  240.  
  241.    +--------------+
  242.    |    Filer-    |
  243.    +--------------+  when you go right and click over
  244.    | Floppy 1   ë |  $.dir.file   -> (a)
  245.    | Floppy 2   ë |  $.dir        -> (b)
  246.    | Hard Chair ë |  $.dir.object -> (c)
  247.    | ...        ë |
  248.  
  249.    then Filer_Run ADFS::0.$.dir.file   (a)
  250.                   ADFS::1.$.dir        (b)
  251.                   ADFS::4.$.dir.object (c)
  252.  
  253.    will be executed.
  254.  
  255.    Here, you must give the full specification to get a 1-to-1 relationship
  256.    between the menu items and the ADFS devices.
  257.  
  258.  
  259. ╣ If you have more than about 256/12 filing systems on your machine a DATA
  260.   line can get too long for BASIC to cope. Just split it in as many chunks
  261.   as needed. It's the order of the lines that is important: first come the
  262.   menu entries then the devices.
  263.  
  264. (end '1.1 only, but read it anyway')
  265.  
  266. --
  267.  
  268. After you've got your menu running you might want to change the
  269. position of the pointer relative to it. In the original the menu pops up
  270. so that the pointer is over the second item (cause it's my hard disc) close
  271. to the right edge of the menu (to take off quickly). To change this, play
  272. with the NUMBERS in
  273.                       x%-=136 : y%+=12
  274.  
  275. in line 226 (still don't need to know any BASIC, just what numbers are).
  276.  
  277. { in original 2.0, this is line 238 and it reads:  x%-=120 : y%+=24 }
  278.  
  279. --
  280.  
  281. Going 'Up ë'
  282. ============
  283.  
  284. 1) If you're in the root directory and click over 'Up ë' or go 'Up ë' right,
  285.    Filer- pops up the 'FS::Disc' (sub)menu:
  286.  
  287.    +-----------------+
  288.    |    FS::Disc     |
  289.    +-----------------+
  290.    | ADFS::StarFight |  for example
  291.    +-----------------+
  292.  
  293.    If no disc name/drive number has been associated with a 'device', just
  294.    the Filing System name is displayed. Say, you had configured
  295.  
  296.    DATA RamBaLam, ...,        { RAM:       }
  297.    DATA     RAM:, ...,        { spritename }
  298.                                 ^
  299.                               { a 2-lines entry in !Filer-.PinBrdMenu.Devices }
  300.    then you get +----------+
  301.                 | FS::Disc |
  302.                 +----------+
  303.                 | RAM:     |
  304.                 +----------+
  305.  
  306.  
  307. 2) However, if you're somewhere deeper in the mud and you click on 'Up ë' with
  308.  
  309.    Å SELECT : the parent directory will be opened and the menu gone
  310.    Å MENU   : only the menu of the parent directory will be created
  311.    Å ADJUST : the parent directory will be opened and its menu built
  312.  
  313.    Going 'Up ë' right works as expected.
  314.  
  315.  
  316. This and that
  317. =============
  318.  
  319. Å Quit from Task Manager
  320.  
  321. Å When your Archi is very busy it can happen that the Filer- doesn't
  322.   'get' an ADJUST over a FS Filer icon (this often happens when you're
  323.   reading a DOS floppy). Just hold the button down for a while
  324.  
  325. Å Some 'editor-applications' (even some by Acorn) conform to Acorn's guide
  326.   lines (or whatever it's called) and open the parent directory of a file
  327.   being edited when you close editor's window displaying the file by clicking
  328.   on the close icon with ADJUST (uff!). If you hold the button a tiny bit
  329.   longer than 'normal', Filer- catches the 'event' and doesn't let it through
  330.   to the Filer, ie. you don't get a directory viewer of the document's
  331.   parent directory but a Filer- menu of it instead. So don't stick to ADJUST
  332.   to get the former.
  333.  
  334. Å Runs on a RiscPC (but isn't mentioned in !Products)
  335.  
  336.  
  337. Problems
  338. ========
  339.  
  340. 1) Paul Denize (pdenize@waikato.ac.nz) reported that Filer- 1.0 crashed when
  341.    the computer has been shutdown with Stuart Hickinbottom's !Shutdown
  342.    application. So hard I tried, I could not reproduce it on the best
  343.    machine in this dull (well, sometimes) world (I have an a310, 4 mt,
  344.    RISC OS 3.11, soldered it in myself, ADFS, IDEFS, standard speaker).
  345.    However, in case anybody else is less lucky than me, here's the solution
  346.    suggested by Paul:
  347.  
  348.    starting at line 18  { 8 }  in original !Filer-.!RunImage,
  349.    there's a list of Wimp messages for the window manager.
  350.    After the first line
  351.  
  352.    [OPT 0 ; Mr. WindowManager, please let these messages through
  353.  
  354.    insert the following:
  355.  
  356.    & 8 ; PreQuit
  357.        ^^^^^^^^^ you can leave this out
  358.  
  359.    Then go to line 123  { 134 }
  360.  
  361.       WHEN 0 : PROCbye
  362.    
  363.    and change it to read
  364.    
  365.       WHEN 0,8 : PROCbye
  366.    
  367.    This should fix ... ehrm ... that.
  368.  
  369.  
  370. 2) Paul also reported Filer- getting into trouble with a certain
  371.    *Configure'd Drive. To avoid such problems, always specify the
  372.    filing system AND the drive name/number in the DATA-lines
  373.    { in !Filer-.PinBedMenu.Devices } for the pinboard menu.
  374.  
  375. 3) If the Filer/Pinboard died and you revived it
  376.    (*RMReinit Filer/Pinboard, *Desktop) but don't get the FS/pinboard menu,
  377.    issue a *RMReinit FiPiFi. Filer- listens for the TaskInitialise message
  378.    and does itselt the reinit when the Filer or the Pinboard restart, but
  379.    sometimes it doesn't work (don't ask why, the PRMs are 300 DM heavy)
  380.  
  381. 4) There are some apps floating around that simulate a Shift-double click
  382.    by a long-double click ('normal' 2click but hold the button down for a
  383.    while after the second click). They won't do a proper long-double click
  384.    with ADJUST if they work like the one I use (mbf2, by a guy at the end).
  385.    A long ADJUST 2click over an application icon in a directory viewer is
  386.    supposed to open a viewer into the application directory and to close its
  387.    parent directory. When Filer-'s running, you'll get a menu instead. A long
  388.    SELECT 2click is ok though. This is because of the way Filer- works.
  389.  
  390.    Also, when applied to a Filer- menu item, long 2clicks become long 1clicks,
  391.    as you click only once over a menu item to 'trigger' it. So you can get
  392.    into an application directory by clicking over its icon in the Filer- menu
  393.    with SELECT and holding the button down for a while. Do NOT use long ADJUST
  394.    as then you'll get the 'Invalid window handle' error and even on the best
  395.    machine in this dull (well, sometimes) world some apps (including the
  396.    IDEFS filer) get killed before I get what I wanted.
  397.  
  398.    { 2.0 has got the missing hand now }
  399.  
  400. 5) on a RiscPC, when outline fonts are used, the menu width seems not
  401.    to be controllable by specifying items' width in the menu header,
  402.    and so certain long dir names in 'normal' Filer- menus bump into
  403.    the ë arrow and i suppose long file names will be truncated at the
  404.    right edge (i'm not talking about Spark archives where names can be
  405.    longer than 12 characters). the only (as no RiscPCman would switch back
  406.    to system font) solution seems to be to add as many spaces to the menu
  407.    title as needed to make the menu wide enough. while this isn't trivial
  408.    for normal menus, it's easy for the 'static' pinboard menu. the title
  409.    you want is "Filer-" in FN12("Filer-"), line 100  { 95 }. remember that
  410.    this string  ^^^^^^ must not be longer than 12 chars (though it can't
  411.    anyway - FN12 will truncate)
  412.  
  413.  
  414. Enjoy
  415. =====
  416.  
  417. Enjoy !
  418.  
  419.  
  420. Who's that guy ?
  421. ================
  422.  
  423. Franz Philipps
  424. K÷slinerstr. 71a
  425. 76139 Karlsruhe
  426. Germany
  427.  
  428. or (for another couple of months)
  429.  
  430. ig06@rz.uni-karlsruhe.de
  431.  
  432. these :-) are missing in several places
  433.